import { BoxShadow, Color } from "../meta";

export interface ThemeNamable {
  themeName?: string;
}
export interface IntentMockOpts extends ThemeNamable {
  color?: {
    theme: typeof Color;
    primary: typeof Color;
    success: typeof Color;
    warning: typeof Color;
    danger: typeof Color;
    error: typeof Color;
    info: typeof Color;
  };
}

/**
 * 文本色彩
 */
export interface TextMockOpts extends ThemeNamable {
  color?: {
    // 主文本色
    primary: typeof Color;
    // 常规色
    regular: typeof Color;
    // 辅助文字色
    secondary: typeof Color;
    // 占位符色
    placeholder: typeof Color;
    // 禁用色
    disabled?: typeof Color;
  };
}
export interface BgColorOpts extends ThemeNamable {
  color?: {
    light: typeof Color;
    dark: typeof Color;
    info: typeof Color;
  };
}
export interface DisabledMockOpts extends ThemeNamable {
  color?: {
    background: typeof Color;
    text: typeof Color;
    border: typeof Color;
  };
}
export interface ComponentShadowMockOpts extends ThemeNamable {
  color?: {
    background: typeof Color;
    text: typeof Color;
    border: typeof Color;
  };
}
export interface ComponentShadowMockOpts extends ThemeNamable {
  // 基础
  base: typeof BoxShadow;
  // 浅
  light: typeof BoxShadow;
  // 更浅
  lighter: typeof BoxShadow;
  // 深
  dark: typeof BoxShadow;
}

export interface MaskMockOpts extends ThemeNamable {
  // 基础
  color: typeof Color;
}
